home *** CD-ROM | disk | FTP | other *** search
/ Skunkware 5 / Skunkware 5.iso / lib / calc / help / changes < prev    next >
Text File  |  1995-07-17  |  4KB  |  94 lines

  1. Following is a list of visible changes to calc from version 1.27.0 to 2.9.0:
  2.  
  3.     Full prototypes have been provided for all C functions, and are used
  4.     if calc is compiled with an ANSI compiler.
  5.  
  6.     Newly defined variables are now initialized to the value of zero instead
  7.     of to the null value.  The elements of new objects are also initialized
  8.     to the value of zero instead of null.
  9.  
  10.     The gcd, lcm, and ismult functions now work for fractional values.
  11.  
  12.     A major bug in the // division for fractions with a negative divisor
  13.     was fixed.
  14.  
  15.     A major bug in the calculation of ln for small values was fixed.
  16.  
  17.     A major bug in the calculation of the ln and power functions for complex
  18.     numbers was fixed.
  19.  
  20.     A major lack of precision for sin and tan for small values was fixed.
  21.  
  22.     A major lack of precision for complex square roots was fixed.
  23.  
  24.     The "static" keyword has been implemented for variables.  So permanent
  25.     variables can be defined to have either file scope or function scope.
  26.  
  27.     Initialization of variables during their declaration are now allowed.
  28.     This is most convenient for the initialization of static variables.
  29.  
  30.     The matrix definition statement can now be used within a declaration
  31.     statement, to immediately define a variable as a matrix.
  32.  
  33.     Initializations of the elements of matrices are now allowed.  One-
  34.     dimensional matrices may have implicit bounds when initialization is
  35.     used.
  36.  
  37.     The obj definition statement can now be used within a declaration
  38.     statement, to immediately define a variable as an object.
  39.  
  40.     Object definitions can be repeated as long as they are exactly the same
  41.     as the previous definition.  This allows the rereading of files which
  42.     happen to define objects.
  43.  
  44.     The integer, rational, and complex routines have been made into a
  45.     'libcalc.a' library so that they can be used in other programs besides
  46.     the calculator.  The "math.h" include file has been split into three
  47.     include files: "zmath.h", "qmath.h", and "cmath.h".
  48.  
  49. Following is a list of visible changes to calc from version 1.26.4 to 1.27.0:
  50.  
  51.     Added an assoc function to return a new type of value called an
  52.     association.  Such values are indexed by one or more arbitrary values.
  53.     They are stored in a hash table for quick access.
  54.  
  55.     Added a hash() function which accepts one or more values and returns
  56.     a quickly calculated small non-negative hash value for those values.
  57.  
  58. Following is a list of visible changes to calc from version 1.26.2 to 1.26.4:
  59.  
  60.     Misc fixes to Makefiles.
  61.  
  62.     Misc lint fixes.
  63.  
  64.     Misc portability fixes.
  65.  
  66.     Misc typo and working fixes to comments, help files and the man page.
  67.  
  68. Following is a list of visible changes to calc from version 1.24.7 to 1.26.2:
  69.  
  70.     There is a new emacs-like command line editing and edit history
  71.     feature.  The old history mechanism has been removed.  The key
  72.     bindings for the new editing commands are slightly configurable
  73.     since they are read in from an initialization file.  This file is
  74.     usually called /usr/lib/calc/bindings, but can be changed by the
  75.     CALCBINDINGS environment variable.  All editing code is
  76.     self-contained in the new files hist.c and hist.h, which can be
  77.     easily extracted and used in other programs.
  78.  
  79.     Two new library files have been added: chrem.cal and cryrand.cal.
  80.     The first of these solves the chinese remainder problem for a set
  81.     of modulos and remainders.  The second of these implements several
  82.     very good random number generators for large numbers.
  83.  
  84.     A small bug which allowed division by zero was fixed.
  85.  
  86.     A major bug in the mattrans function was fixed.
  87.  
  88.     A major bug in the acos function for negative arguments was fixed.
  89.  
  90.     A major bug in the strprintf function when objects were being printed
  91.     was fixed.
  92.  
  93.     A small bug in the library file regress.cal was fixed.
  94.